package com.open.capacity.prints.excel;

import cn.afterturn.easypoi.excel.annotation.Excel;
import cn.afterturn.easypoi.handler.inter.IExcelDataModel;
import cn.afterturn.easypoi.handler.inter.IExcelModel;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;


@Data
public class AkdzExcelModel implements IExcelDataModel, IExcelModel {
    //行号
    private Integer rowNum;
    //错误消息
    private String errorMsg;


    //流水号
    @Excel(name = "流水号",width = 20)
    private String lsh;

    //案号
    @Excel(name = "案号",width = 20)
    private String ah;

    //票据流水号
    @Excel(name = "票据流水号",width = 20)
    private String pjlsh;

    //到账还是支付 01 到账，02 支出
    @Excel(name = "到账还是支付", replace = {"到账_01", "支付_02"})
    private String dzorzf;

    //执行款类别
    @Excel(name = "执行款类别",width = 20)
    private String fylb;

    //到账/支付日期
    @Excel(name = "到账/支付日期",width = 20)
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date jbrq;

    //缴款人
    @Excel(name = "缴款人",width = 20)
    private String jkr;

    //金额
    @Excel(name = "金额",width = 20)
    private BigDecimal jine;

    //收支方式
    @Excel(name = "收支方式",width = 20)
    private String szfs;

    //案件承办部门
    @Excel(name = "案件承办部门",width = 20)
    private String cbbm;

    //案件承办人
    @Excel(name = "案件承办人",width = 20)
    private String cbrr;

    //票据号码
    @Excel(name = "票据号码",width = 20)
    private String pjhm;

    //支票号码
    @Excel(name = "支票号码",width = 20)
    private String zphm;

    //票据开票日期
    @Excel(name = "票据开票日期",width = 20)
    private String pjkprq;

    //支票开票日期
    @Excel(name = "支票开票日期",width = 20)
    private String zpkprq;

    //最后更新时间
    @Excel(name = "最后更新时间",width = 20)
    private Date lastupdate;

    //款项来源
    @Excel(name = "款项来源",width = 20)
    private String kxly;

    //被执行人序号
    @Excel(name = "被执行人序号",width = 20)
    private String dsrxh;

    //退款收款人
    @Excel(name = "退款收款人",width = 20)
    private String skr;

    //被执行人名称
    @Excel(name = "被执行人名称",width = 20)
    private String dsrmc;

    //来源票据号码
    @Excel(name = "来源票据号码",width = 20)
    private String lypjhm;

    //序号
    @Excel(name = "序号",width = 20)
    private Integer xh;

    @Excel(name = "案款流水号",width = 20)
    private String aklsh;

    //不明款费主键
    @Excel(name = "不明款费主键",width = 20)
    private String zchm;

    //认领类别
    @Excel(name = "认领类别",width = 20)
    private String rllb;

    //原记载的到账流水号
    @Excel(name = "原记载的到账流水号",width = 20)
    private String ylsh;


    //通达海保留字段，用于记载主键值（EK_DZ.LSH和EFK_ZCK.ZCHM）
    private String tdhpk1;

    //明细类别
    @Excel(name = "明细类别",width = 20)
    private String mxlb;

    //开户网点
    @Excel(name = "开户网点",width = 20)
    private String khwd;

    //开户账号
    @Excel(name = "开户账号",width = 20)
    private String khzh;

    //实体账号
    @Excel(name = "实体账号",width = 20)
    private String stzh;

    //子账号
    @Excel(name = "子账号",width = 20)
    private String rczh;

    //银行附言
    @Excel(name = "银行附言",width = 20)
    private String yhfy;

    //备注说明
    @Excel(name = "备注说明",width = 20)
    private String bzsm;

    //法院开户账号
    @Excel(name = "法院开户账号",width = 20)
    private String fykhzh;

    //案号代码
    @Excel(name = "案号代码",width = 20)
    private String ahdm;

    //认领日期
    @Excel(name = "认领日期",width = 20)
    private String rlrq;

    //收款开户账号
    @Excel(name = "收款开户账号",width = 20)
    @TableField(exist = false)
    private String skkhzh;

    //是否生成会计凭证
    private Integer buildKjpz;

    //是否生成出纳凭证
    private Integer buildCnpz;

    //是否同步附件
    private Integer uploadAttach;

    //会计凭证id
    private String kjpzid;

    //出纳凭证id
    private String cnpzid;

    //状态
    private Integer status;

}
